package com.laowang.project.system.mapper;

import java.util.List;

import com.laowang.project.system.domain.MyCyhVip;
import com.laowang.project.system.domain.vo.MyCyhVipVo;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

/**
 * 会员级别Mapper接口
 *
 * @author laowang
 * @date 2023-06-01
 */
public interface MyCyhVipMapper {
    /**
     * 查询会员级别
     *
     * @param id 会员级别ID
     * @return 会员级别
     */
     MyCyhVip selectMyCyhVipById(Integer id);

    /**
     * 查询会员级别列表
     *
     * @param myCyhVip 会员级别
     * @return 会员级别集合
     */
     List<MyCyhVip> selectMyCyhVipList(MyCyhVip myCyhVip);

    /**
     * 新增会员级别
     *
     * @param myCyhVip 会员级别
     * @return 结果
     */
    int insertMyCyhVip(MyCyhVip myCyhVip);

    /**
     * 修改会员级别
     *
     * @param myCyhVip 会员级别
     * @return 结果
     */
    int updateMyCyhVip(MyCyhVip myCyhVip);

    /**
     * 删除会员级别
     *
     * @param id 会员级别ID
     * @return 结果
     */
    int deleteMyCyhVipById(Integer id);

    /**
     * 批量删除会员级别
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    int deleteMyCyhVipByIds(Integer[] ids);

    MyCyhVipVo selectMyCyhVipDiscount(@Param("id") Integer id);

    @Select("select * from my_cyh_vip where `level` = #{valueOf}")
    MyCyhVip selectMyCyhVipByLevel(Integer valueOf);
}
